package me.sdevil507.platform.repository;

import me.sdevil507.platform.po.PlatResourcePo;
import me.sdevil507.supports.jpa.BaseJpaDslRepository;

import java.util.List;
import java.util.Set;

/**
 * 平台资源表[PlatResourcePo]
 *
 * @author sdevil507
 * created on 2020-06-23 18:43:30
 */
public interface PlatResourceRepository extends BaseJpaDslRepository<PlatResourcePo, Long> {

    /**
     * 根据资源id列表查询出资源列表
     *
     * @param resourceIds 资源id列表
     * @return 资源列表
     */
    Set<PlatResourcePo> findAllByIdIn(List<Long> resourceIds);

    /**
     * 根据资源code列表查询出资源列表
     *
     * @param resourceCodes 资源code列表
     * @return 资源列表
     */
    Set<PlatResourcePo> findAllByCodeIn(List<String> resourceCodes);

    /**
     * 根据parentId获取同级资源
     *
     * @param parentId 父模块id
     * @return 同级资源列表
     */
    List<PlatResourcePo> findAllByParentIdOrderByCodeDesc(Long parentId);

}